package com.accounting.client.remote;

import java.util.List;

import com.accounting.client.remote.obj.ProductCatalog;
import com.accounting.client.remote.transfer.AddProductCatalogRequest;
import com.accounting.client.remote.transfer.UpdateProductCatalogRequest;
import com.google.gwt.user.client.rpc.AsyncCallback;

public interface ProductCatalogServiceAsync {
	
	public void RemoveProductCatalog(String passport, int catId, AsyncCallback<Boolean> callback);
	public void AddProductCatalog(String passport, AddProductCatalogRequest request, AsyncCallback<Boolean> callback);
	public void UpdateProductCatalog(String passport, UpdateProductCatalogRequest request, AsyncCallback<Boolean> callback);
	public void GetAllProductCatalogs(String passport, AsyncCallback<List<ProductCatalog>> callback);
	public void GetProductCatalogs(String passport, int catId, AsyncCallback<List<ProductCatalog>> callback);
	public void GetLeafProductCatalogs(String passport, AsyncCallback<List<ProductCatalog>> callback);
}
